﻿#pragma once

#include "Ability/EditorAbilityView.h"
#include "EditorObjectPropertyAbilityViewModel.h"
#include "Widgets/Widget.h"
#include "EditorObjectPropertyAbilityView.m.h"

class REditorPropertyView;

RCLASS()
class REditorObjectPropertyAbilityView : public REditorAbilityView
{
    ROBJECT

public: 
    void BindViewModel(TSharedObjectPtr<REditorAbilityViewModel> InViewModel) override;
    void CreateWidget(TSharedObjectPtr<RWidget> InParent) override;
    void FillOperations(TSharedObjectPtr<RWidget> InTitleBar) override;

protected:
    TWeakObjectPtr<REditorObjectPropertyAbilityViewModel> PropertyViewModel;

    TWeakObjectPtr<RWidget> List;


    TVector<TSharedObjectPtr<REditorPropertyView>> Properties;
    void UpdateWidget();
};